/*
	Copyright (c) 2017 TOSHIBA Digital Solutions Corporation

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU Affero General Public License as
	published by the Free Software Foundation, either version 3 of the
	License, or (at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU Affero General Public License for more details.

	You should have received a copy of the GNU Affero General Public License
	along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
#include "sql_internal_parser.h"
/**
 * @file   lempar.cpp
 * @brief  C++ Driver template for the LEMON parser generator.
 *         Just ported into C++ style.
 *
 */
/* The code below are written into .cpp file */

namespace lemon_SQLParser {
const SQLParser_YYACTIONTYPE SQLParser::yy_action[] = {
 /*     0 */   303,  357,   64,  348,  355,   23,  538,  473,  666,  223,
 /*    10 */   660,  333,  145,  145,  632,  221,  146,  534,  640,  344,
 /*    20 */   185,  456,   92,  630,   86,   85,  397,  625,  548,  667,
 /*    30 */   508,   47,  629,  397,  316,  399,  190,  303,   86,   85,
 /*    40 */   267,  576,  498,  172,   80,   77,  437,  622,  353,  611,
 /*    50 */   611,  351,   24,  635,  395,   99,  622,  328,  327,   92,
 /*    60 */   557,   86,   85,  435,  651,  650,  649,  592,  648,  647,
 /*    70 */   646,  645,  644,  429,  168,  193,  591,   86,   85,  637,
 /*    80 */   636,  642,  641,  110,  536,  541,  611,  611,  576,  398,
 /*    90 */   111,  536,  541,  133,  628,  627,  638,   98,  293,  101,
 /*   100 */    78,  604,  603,  606,  605,   91,   95,   93,   96,   94,
 /*   110 */   375,   90,   89,   88,   87,   84,   83,   82,   81,  289,
 /*   120 */    95,   93,   96,   94,   79,   90,   89,   88,   87,   84,
 /*   130 */    83,   82,   81,  124,   98,  578,  101,   78,  604,  603,
 /*   140 */   606,  605,   91,   95,   93,   96,   94,  655,   90,   89,
 /*   150 */    88,   87,   84,   83,   82,   81,  303,  643,  583,  436,
 /*   160 */   601,  600,  267,  620,   90,   89,   88,   87,   84,   83,
 /*   170 */    82,   81,  626,   84,   83,   82,   81,  590,   92,  579,
 /*   180 */    86,   85,  557,  599,  180,  576,  414,  413,  323,  160,
 /*   190 */   322,  321,  302,  303,   86,   85,  527,  382,  622,  162,
 /*   200 */   383,  450,  524,  381,  177,  611,  611,  622,  328,  327,
 /*   210 */   655,  522,  521,  329,  635,   92,  200,   86,   85,   80,
 /*   220 */    77,  437,  486,  297,  435,  296,  295,  294,  436,  601,
 /*   230 */   600,  170,  576,  414,  413,  323,  546,  322,  321,  302,
 /*   240 */   485,  484,  611,  611,  456,  199,  582,  580,  581,  597,
 /*   250 */   670,  668,  334,   98,   44,  101,   78,  604,  603,  606,
 /*   260 */   605,   91,   95,   93,   96,   94,  164,   90,   89,   88,
 /*   270 */    87,   84,   83,   82,   81,  653,   95,   93,   96,   94,
 /*   280 */   167,   90,   89,   88,   87,   84,   83,   82,   81,  207,
 /*   290 */    98,   13,  101,   78,  604,  603,  606,  605,   91,   95,
 /*   300 */    93,   96,   94,  636,   90,   89,   88,   87,   84,   83,
 /*   310 */    82,   81,  303,   23,  567,  409,  408,  320,  307,  319,
 /*   320 */   318,  655,  632,  722,  272,  436,  601,  600,  456,  618,
 /*   330 */   617,  630,  326,  386,   92,  625,   86,   85,   47,  639,
 /*   340 */   629,  589,  316,  399,  284,  657,  637,  240,  456,  303,
 /*   350 */    80,   77,  437,  358,  301,  191,  469,  361,   47,  274,
 /*   360 */   310,  611,  611,  638,  123,  309,  401,  256,  535,  349,
 /*   370 */   623,   92,   60,   86,   85,  219,  129,  745,  468,  623,
 /*   380 */   325,   86,   85,   80,   77,  437,  456,  636,  476,  596,
 /*   390 */   658,  436,  601,  600,   71,  621,   47,  514,  611,  611,
 /*   400 */   391,  655,  628,  627,  621,  618,  617,  636,  452,   98,
 /*   410 */   208,  101,   78,  604,  603,  606,  605,   91,   95,   93,
 /*   420 */    96,   94,  540,   90,   89,   88,   87,   84,   83,   82,
 /*   430 */    81,  539,  239,  465,  530,  160,  238,  290,  424,   63,
 /*   440 */   609,  464,  517,  418,  237,  636,   98,  586,  101,   78,
 /*   450 */   604,  603,  606,  605,   91,   95,   93,   96,   94,  282,
 /*   460 */    90,   89,   88,   87,   84,   83,   82,   81,  271,  592,
 /*   470 */   431,  303,   84,   83,   82,   81,  456,  656,  591,  456,
 /*   480 */   626,   69,  397,  654,  610,  610,   47,  204,  202,   47,
 /*   490 */   197,  456,    5,   92,  390,   86,   85,  436,  601,  600,
 /*   500 */   456,   47,  267,  456,  160,  533,  246,  174,  303,  428,
 /*   510 */    49,  517,  447,   29,   70,  573,   68,  635,   66,  412,
 /*   520 */   611,  611,  557,  286,  444,  169,  193,  435,  429,  173,
 /*   530 */    92,  429,   86,   85,  175,  636,  608,  607,  636,  635,
 /*   540 */   542,  541,  462,  429,  635,  979,  143,  474,    2,  435,
 /*   550 */   636,  481,  571,  655,  435,  460,  411,  611,  611,  636,
 /*   560 */   569,  564,  636,  562,  410,  407,  480,  406,   98,  394,
 /*   570 */   101,   78,  604,  603,  606,  605,   91,   95,   93,   96,
 /*   580 */    94,  300,   90,   89,   88,   87,   84,   83,   82,   81,
 /*   590 */   560,  555,  520,  329,  405,  233,  264,  250,  478,  144,
 /*   600 */   250,  488,  332,  264,  553,   98,  163,  101,   78,  604,
 /*   610 */   603,  606,  605,   91,   95,   93,   96,   94,  456,   90,
 /*   620 */    89,   88,   87,   84,   83,   82,   81,  380,   47,  456,
 /*   630 */   303,    3,  385,  299,  102,   75,  432,  178,  343,   47,
 /*   640 */   632,  669,    2,  652,  230,  329,  176,  635,  331,  630,
 /*   650 */   186,  441,   92,  625,   86,   85,  635,  435,  629,   72,
 /*   660 */    73,  330,  438,  456,  491,  456,  435,  303,  195,  454,
 /*   670 */   429,  317,  507,   47,  314,   51,  657,  636,  298,  611,
 /*   680 */   611,  429,  276,  336,   53,  230,  230,  285,  636,   92,
 /*   690 */   329,   86,   85,  456,   97,  186,  433,  456,  456,  456,
 /*   700 */   456,  456,  275,   15,  449,  446,  443,   26,   48,   50,
 /*   710 */    33,  112,  488,  504,  184,  429,  611,  611,  456,  313,
 /*   720 */   628,  627,  636,  440,  636,  230,  553,   98,  115,  101,
 /*   730 */    78,  604,  603,  606,  605,   91,   95,   93,   96,   94,
 /*   740 */   657,   90,   89,   88,   87,   84,   83,   82,   81,  489,
 /*   750 */   547,  463,  636,  182,  181,   74,  636,  636,  636,  636,
 /*   760 */   636,  426,  230,  345,   98,  487,  101,   78,  604,  603,
 /*   770 */   606,  605,   91,   95,   93,   96,   94,  636,   90,   89,
 /*   780 */    88,   87,   84,   83,   82,   81,  303,    3,  593,  620,
 /*   790 */   198,   75,  432,  308,  273,  379,  632,  616,  626,  624,
 /*   800 */   141,  282,   21,   10,  593,  630,  668,  334,   92,  625,
 /*   810 */    86,   85,  431,  615,  629,   72,   73,  330,  655,  456,
 /*   820 */   140,  456,  456,  303,    9,  454,  595,  614,    8,   47,
 /*   830 */   139,  114,   47,  613,  138,  611,  611,    7,  602,  612,
 /*   840 */     1,  434,    6,   71,  598,   92,  456,   86,   85,  448,
 /*   850 */   127,   22,  403,  456,  456,  363,   15,  456,  456,  456,
 /*   860 */   449,  446,  443,  113,  109,  445,  594,  108,  119,  118,
 /*   870 */    20,  429,  611,  611,  429,   63,  628,  627,  636,  440,
 /*   880 */   636,  636,   17,   98,  593,  101,   78,  604,  603,  606,
 /*   890 */   605,   91,   95,   93,   96,   94,  593,   90,   89,   88,
 /*   900 */    87,   84,   83,   82,   81,  636,   61,  421,  420,  166,
 /*   910 */   588,   74,  636,  636,  315,  587,  636,  636,  636,  417,
 /*   920 */    98,  171,   76,   78,  604,  603,  606,  605,   91,   95,
 /*   930 */    93,   96,   94,  584,   90,   89,   88,   87,   84,   83,
 /*   940 */    82,   81,  303,    3,  161,  442,  192,   75,  432,  456,
 /*   950 */   189,  575,  632,  456,  626,  624,  574,  439,   21,  117,
 /*   960 */   572,  630,  545,  116,   92,  625,   86,   85,   12,  253,
 /*   970 */   629,   72,   73,  330,  570,  456,   19,  456,  456,  303,
 /*   980 */   456,  454,  543,  568,  188,  122,  566,  121,  132,  565,
 /*   990 */   131,  611,  611,  722,  563,  561,  559,  255,  254,  531,
 /*  1000 */   389,   92,  388,   86,   85,  387,   18,  251,  636,  528,
 /*  1010 */    58,  456,  636,  456,  456,  526,  449,  446,  443,  525,
 /*  1020 */    57,  130,  523,  137,  103,  378,  159,  376,  611,  611,
 /*  1030 */   516,  249,  628,  627,  636,  440,  636,  636,  128,  636,
 /*  1040 */   372,  101,   78,  604,  603,  606,  605,   91,   95,   93,
 /*  1050 */    96,   94,  126,   90,   89,   88,   87,   84,   83,   82,
 /*  1060 */    81,  456,  235,  368,  231,  456,  456,   74,  245,  158,
 /*  1070 */   636,  107,  636,  636,  242,  106,   46,  367,  282,   78,
 /*  1080 */   604,  603,  606,  605,   91,   95,   93,   96,   94,  431,
 /*  1090 */    90,   89,   88,   87,   84,   83,   82,   81,  512,    4,
 /*  1100 */     3,  505,  509,  359,   75,  432,  228,  311,  497,  632,
 /*  1110 */   626,  624,  423,  456,   21,  496,  217,  213,  630,  218,
 /*  1120 */   636,  456,  625,  105,  636,  636,  216,  629,   72,   73,
 /*  1130 */   330,   52,  211,  215,  210,  456,  229,  456,  454,    3,
 /*  1140 */   456,  214,  212,   65,  432,  136,  456,  135,  632,  456,
 /*  1150 */   134,  347,  456,  346,   56,  209,   45,  630,  153,   32,
 /*  1160 */   456,  625,   43,  206,  152,  151,  629,   72,   73,  330,
 /*  1170 */    42,  120,  636,  449,  446,  443,  456,  454,  456,  149,
 /*  1180 */   636,   55,  205,   54,  148,  475,   31,  456,   41,  628,
 /*  1190 */   627,  227,  440,  664,  636,  226,  636,  104,  665,  636,
 /*  1200 */   456,  291,  377,  225,  655,  636,  261,  306,  636,  663,
 /*  1210 */    40,  636,  449,  446,  443,  456,  305,  304,  662,  636,
 /*  1220 */   456,   25,  292,  661,   74,   16,  456,  384,  628,  627,
 /*  1230 */    39,  440,  456,  456,  456,  636,   30,  636,  456,  456,
 /*  1240 */   456,  456,   38,   37,   36,  402,  636,  472,   28,   27,
 /*  1250 */    35,   34,  471,  458,  288,   14,  470,  287,  467,  636,
 /*  1260 */   659,  461,  634,   74,  457,  282,   60,  626,  624,  466,
 /*  1270 */   129,   21,  425,  427,  636,  196,  280,   62,  455,  636,
 /*  1280 */   631,  100,  279,  619,   67,  636,  453,  451,  269,  422,
 /*  1290 */   278,  636,  636,  636,  633,  324,  277,  636,  636,  636,
 /*  1300 */   636,  416,  558,  419,  636,  179,  626,  624,   59,  404,
 /*  1310 */    21,  554,  551,  400,  544,  396,  392,  537,  394,  187,
 /*  1320 */   247,  248,  232,  243,  194,  585,  265,  374,  244,  236,
 /*  1330 */   393,  556,  373,  262,  370,  552,  259,  241,  515,  550,
 /*  1340 */   257,  157,  549,  365,  513,  369,  252,  511,  366,  234,
 /*  1350 */   364,  362,  529,  506,  156,  503,  510,  502,  501,  312,
 /*  1360 */   185,  183,  222,  224,  500,  220,  125,  499,  360,  356,
 /*  1370 */   495,  354,  494,  352,  493,  350,  492,  142,  339,  154,
 /*  1380 */   342,  341,  340,  337,  490,  147,   81,  268,  532,  150,
 /*  1390 */   430,  980,  201,  335,  980,  155,  980,  483,  980,  165,
 /*  1400 */   980,  980,  980,  980,  980,  980,  980,  980,  415,  980,
 /*  1410 */   980,  477,  281,  980,  980,  980,  980,  980,  980,  980,
 /*  1420 */   459,  270,  980,  482,  980,  980,  980,  980,  519,  518,
 /*  1430 */   980,  980,  980,  371,  980,  980,  980,  980,  980,  980,
 /*  1440 */   980,  980,  980,   11,  980,  479,  980,  283,  980,  263,
 /*  1450 */   260,  980,  980,  258,  980,  980,  980,  203,  980,  338,
 /*  1460 */   980,  980,  980,  266,  980,  980,  980,  980,  980,  980,
 /*  1470 */   577,
};
const SQLParser_YYCODETYPE SQLParser::yy_lookahead[] = {
 /*     0 */    14,  142,   16,  135,  145,   10,   11,  190,  191,  143,
 /*    10 */   193,  194,   22,   23,   19,  149,   26,   11,   40,  151,
 /*    20 */   152,  196,   36,   28,   38,   39,  196,   32,  257,    1,
 /*    30 */   213,  206,   37,  196,   39,   40,   11,   14,   38,   39,
 /*    40 */    20,   16,  225,  227,  273,  274,  275,   28,  142,   63,
 /*    50 */    64,  145,  235,  237,  229,   69,   37,   38,   39,   36,
 /*    60 */    40,   38,   39,  247,   86,   87,   88,   44,   90,   91,
 /*    70 */    92,   93,   94,  248,  258,  259,   53,   38,   39,  142,
 /*    80 */   255,  103,  104,  253,  254,  255,   63,   64,   16,  252,
 /*    90 */   253,  254,  255,   10,   99,  100,  159,  111,    9,  113,
 /*   100 */   114,  115,  116,  117,  118,  119,  120,  121,  122,  123,
 /*   110 */    21,  125,  126,  127,  128,  129,  130,  131,  132,   11,
 /*   120 */   120,  121,  122,  123,  124,  125,  126,  127,  128,  129,
 /*   130 */   130,  131,  132,   10,  111,   16,  113,  114,  115,  116,
 /*   140 */   117,  118,  119,  120,  121,  122,  123,   40,  125,  126,
 /*   150 */   127,  128,  129,  130,  131,  132,   14,  179,   19,  153,
 /*   160 */   154,  155,   20,   40,  125,  126,  127,  128,  129,  130,
 /*   170 */   131,  132,  177,  129,  130,  131,  132,  231,   36,   40,
 /*   180 */    38,   39,   40,   11,   10,  160,  161,  162,  163,  196,
 /*   190 */   165,  166,  167,   14,   38,   39,  203,   14,   28,   20,
 /*   200 */    17,  204,   19,   20,  227,   63,   64,   37,   38,   39,
 /*   210 */    40,  218,  219,  216,  237,   36,   16,   38,   39,  273,
 /*   220 */   274,  275,  196,    4,  247,    6,    7,    8,  153,  154,
 /*   230 */   155,   12,  160,  161,  162,  163,  129,  165,  166,  167,
 /*   240 */   214,  215,   63,   64,  196,  268,  107,  108,  109,   11,
 /*   250 */     0,    1,    2,  111,  206,  113,  114,  115,  116,  117,
 /*   260 */   118,  119,  120,  121,  122,  123,  147,  125,  126,  127,
 /*   270 */   128,  129,  130,  131,  132,   11,  120,  121,  122,  123,
 /*   280 */    16,  125,  126,  127,  128,  129,  130,  131,  132,   70,
 /*   290 */   111,   10,  113,  114,  115,  116,  117,  118,  119,  120,
 /*   300 */   121,  122,  123,  255,  125,  126,  127,  128,  129,  130,
 /*   310 */   131,  132,   14,   10,  160,  161,  162,  163,   25,  165,
 /*   320 */   166,   40,   19,  149,  276,  153,  154,  155,  196,  214,
 /*   330 */   215,   28,  217,  129,   36,   32,   38,   39,  206,   11,
 /*   340 */    37,  231,   39,   40,   16,  196,  142,   51,  196,   14,
 /*   350 */   273,  274,  275,   36,  135,   11,  207,  138,  206,   11,
 /*   360 */   141,   63,   64,  159,   16,  146,  249,  250,  251,  150,
 /*   370 */    28,   36,  172,   38,   39,   58,  157,   81,   27,   37,
 /*   380 */   248,   38,   39,  273,  274,  275,  196,  255,   74,   11,
 /*   390 */    28,  153,  154,  155,   16,   28,  206,  101,   63,   64,
 /*   400 */   248,   40,   99,  100,   37,  214,  215,  255,  217,  111,
 /*   410 */    49,  113,  114,  115,  116,  117,  118,  119,  120,  121,
 /*   420 */   122,  123,   28,  125,  126,  127,  128,  129,  130,  131,
 /*   430 */   132,   37,  136,   29,   11,  196,  140,  198,  248,   16,
 /*   440 */    19,   25,  203,   28,  148,  255,  111,   32,  113,  114,
 /*   450 */   115,  116,  117,  118,  119,  120,  121,  122,  123,  145,
 /*   460 */   125,  126,  127,  128,  129,  130,  131,  132,   11,   44,
 /*   470 */   156,   14,  129,  130,  131,  132,  196,   11,   53,  196,
 /*   480 */   177,  183,  196,   28,   63,   64,  206,  173,  174,  206,
 /*   490 */   176,  196,   10,   36,  105,   38,   39,  153,  154,  155,
 /*   500 */   196,  206,   20,  196,  196,   11,  198,  227,   14,  229,
 /*   510 */   206,  203,  229,  206,  182,  160,  184,  237,  183,  164,
 /*   520 */    63,   64,   40,   10,  229,  258,  259,  247,  248,  227,
 /*   530 */    36,  248,   38,   39,  227,  255,  115,  116,  255,  237,
 /*   540 */   254,  255,   30,  248,  237,  186,  187,  188,  189,  247,
 /*   550 */   255,   59,  160,   40,  247,   10,  164,   63,   64,  255,
 /*   560 */   160,  160,  255,  160,  164,  164,   74,  164,  111,  180,
 /*   570 */   113,  114,  115,  116,  117,  118,  119,  120,  121,  122,
 /*   580 */   123,  204,  125,  126,  127,  128,  129,  130,  131,  132,
 /*   590 */   160,   11,   11,  216,  164,   11,   16,   16,   11,   26,
 /*   600 */    16,  196,   28,   16,  196,  111,   10,  113,  114,  115,
 /*   610 */   116,  117,  118,  119,  120,  121,  122,  123,  196,  125,
 /*   620 */   126,  127,  128,  129,  130,  131,  132,   11,  206,  196,
 /*   630 */    14,   10,  196,  204,   36,   14,   15,  227,  233,  206,
 /*   640 */    19,  188,  189,   11,  196,  216,  227,  237,  212,   28,
 /*   650 */   196,  229,   36,   32,   38,   39,  237,  247,   37,   38,
 /*   660 */    39,   40,  229,  196,   11,  196,  247,   14,  240,   48,
 /*   670 */   248,  263,  224,  206,  220,  206,  196,  255,  204,   63,
 /*   680 */    64,  248,  149,  196,  256,  196,  196,  207,  255,   36,
 /*   690 */   216,   38,   39,  196,   10,  196,  229,  196,  196,  196,
 /*   700 */   196,  196,  149,  206,   83,   84,   85,  206,  206,  206,
 /*   710 */   206,  206,  196,  224,  224,  248,   63,   64,  196,  220,
 /*   720 */    99,  100,  255,  102,  255,  196,  196,  111,  206,  113,
 /*   730 */   114,  115,  116,  117,  118,  119,  120,  121,  122,  123,
 /*   740 */   196,  125,  126,  127,  128,  129,  130,  131,  132,  233,
 /*   750 */   129,  207,  255,  224,  267,  134,  255,  255,  255,  255,
 /*   760 */   255,  264,  196,  232,  111,  234,  113,  114,  115,  116,
 /*   770 */   117,  118,  119,  120,  121,  122,  123,  255,  125,  126,
 /*   780 */   127,  128,  129,  130,  131,  132,   14,   10,  209,   40,
 /*   790 */   224,   14,   15,  263,   11,   17,   19,   11,  177,  178,
 /*   800 */    10,  145,  181,   16,  209,   28,    1,    2,   36,   32,
 /*   810 */    38,   39,  156,   11,   37,   38,   39,   40,   40,  196,
 /*   820 */    10,  196,  196,   14,   16,   48,    7,   11,   16,  206,
 /*   830 */    10,  206,  206,   11,   10,   63,   64,   16,  142,   11,
 /*   840 */    10,   16,   10,   16,   11,   36,  196,   38,   39,  270,
 /*   850 */    10,   10,  229,  196,  196,  229,  206,  196,  196,  196,
 /*   860 */    83,   84,   85,  206,  206,  270,   11,  206,  206,  206,
 /*   870 */    25,  248,   63,   64,  248,   16,   99,  100,  255,  102,
 /*   880 */   255,  255,   25,  111,  209,  113,  114,  115,  116,  117,
 /*   890 */   118,  119,  120,  121,  122,  123,  209,  125,  126,  127,
 /*   900 */   128,  129,  130,  131,  132,  255,   10,   10,   28,   16,
 /*   910 */    11,  134,  255,  255,  264,   32,  255,  255,  255,   16,
 /*   920 */   111,   10,  113,  114,  115,  116,  117,  118,  119,  120,
 /*   930 */   121,  122,  123,   11,  125,  126,  127,  128,  129,  130,
 /*   940 */   131,  132,   14,   10,   10,  270,   11,   14,   15,  196,
 /*   950 */   149,  160,   19,  196,  177,  178,  160,  270,  181,  206,
 /*   960 */   160,   28,  158,  206,   36,   32,   38,   39,   10,   10,
 /*   970 */    37,   38,   39,   40,  160,  196,   25,  196,  196,   14,
 /*   980 */   196,   48,   11,  160,   11,  206,  160,  206,  206,  160,
 /*   990 */   206,   63,   64,  149,  160,  160,  160,  149,  149,   11,
 /*  1000 */   169,   36,   10,   38,   39,  168,   25,   11,  255,   34,
 /*  1010 */    36,  196,  255,  196,  196,   18,   83,   84,   85,   19,
 /*  1020 */    10,  206,   21,  206,  206,   18,   10,   14,   63,   64,
 /*  1030 */    15,    9,   99,  100,  255,  102,  255,  255,   10,  255,
 /*  1040 */    11,  113,  114,  115,  116,  117,  118,  119,  120,  121,
 /*  1050 */   122,  123,   20,  125,  126,  127,  128,  129,  130,  131,
 /*  1060 */   132,  196,  143,  137,    9,  196,  196,  134,   33,   10,
 /*  1070 */   255,  206,  255,  255,   81,  206,  206,   25,  145,  114,
 /*  1080 */   115,  116,  117,  118,  119,  120,  121,  122,  123,  156,
 /*  1090 */   125,  126,  127,  128,  129,  130,  131,  132,   32,   10,
 /*  1100 */    10,   15,   11,   36,   14,   15,   51,  139,   32,   19,
 /*  1110 */   177,  178,   22,  196,  181,   32,  144,  147,   28,  143,
 /*  1120 */   255,  196,   32,  206,  255,  255,  143,   37,   38,   39,
 /*  1130 */    40,  206,  147,  144,    9,  196,   81,  196,   48,   10,
 /*  1140 */   196,  143,  143,   14,   15,  206,  196,  206,   19,  196,
 /*  1150 */   206,   24,  196,   58,   10,   16,  206,   28,   49,  206,
 /*  1160 */   196,   32,  206,  149,  144,  147,   37,   38,   39,   40,
 /*  1170 */   206,   36,  255,   83,   84,   85,  196,   48,  196,  138,
 /*  1180 */   255,   36,  149,   36,  175,    3,  206,  196,  206,   99,
 /*  1190 */   100,  136,  102,    5,  255,  140,  255,  206,  192,  255,
 /*  1200 */   196,  196,   13,  148,   40,  255,  149,  205,  255,  192,
 /*  1210 */   206,  255,   83,   84,   85,  196,  205,  205,  192,  255,
 /*  1220 */   196,   16,  195,  192,  134,  206,  196,   33,   99,  100,
 /*  1230 */   206,  102,  196,  196,  196,  255,  206,  255,  196,  196,
 /*  1240 */   196,  196,  206,  206,  206,  196,  255,  197,  206,  206,
 /*  1250 */   206,  206,  199,   35,  200,  206,   24,  201,  196,  255,
 /*  1260 */   202,   31,  237,  134,  196,  145,  172,  177,  178,  208,
 /*  1270 */   157,  181,  169,  168,  255,  235,  242,  170,  196,  255,
 /*  1280 */   196,  171,  243,   40,  182,  255,  216,  216,  210,   31,
 /*  1290 */   244,  255,  255,  255,  246,   16,  245,  255,  255,  255,
 /*  1300 */   255,  106,  196,  211,  255,  197,  177,  178,  143,   33,
 /*  1310 */   181,  196,  196,   40,  251,  196,   24,  196,  180,  196,
 /*  1320 */   196,  195,   33,  201,  277,  265,  261,  197,  196,  195,
 /*  1330 */   245,  262,  199,  261,  197,  262,  261,  196,  202,  262,
 /*  1340 */   261,  223,  262,  197,  196,  196,  272,  196,  196,  196,
 /*  1350 */   196,   13,  271,  197,  223,  196,  228,  196,  196,  196,
 /*  1360 */   152,  111,  196,  223,  197,  196,  269,  197,  196,  196,
 /*  1370 */   196,  196,  196,  196,  196,  196,  196,  196,  235,  196,
 /*  1380 */   196,  196,  196,  196,  234,   10,  132,  196,  271,  221,
 /*  1390 */   278,  279,  235,  235,  279,  196,  279,  242,  279,  239,
 /*  1400 */   279,  279,  279,  279,  279,  279,  279,  279,  266,  279,
 /*  1410 */   279,  221,  241,  279,  279,  279,  279,  279,  279,  279,
 /*  1420 */   209,  209,  279,  222,  279,  279,  279,  279,  231,  231,
 /*  1430 */   279,  279,  279,  226,  279,  279,  279,  279,  279,  279,
 /*  1440 */   279,  279,  279,  239,  279,  242,  279,  238,  279,  257,
 /*  1450 */   257,  279,  279,  257,  279,  279,  279,  257,  279,  257,
 /*  1460 */   279,  279,  279,  257,  279,  279,  279,  279,  279,  279,
 /*  1470 */   260,
};
const short SQLParser::yy_shift_ofst[] = {
 /*     0 */   805,  933,  219,  933,  777,  777,  777,  777,  777,  777,
 /*    10 */   777,  777,  303,  656,  142,   23,   23, 1090,  777,  777,
 /*    20 */   777,  777,  777,  303,  314,  778,  -14,  653,  616,  494,
 /*    30 */   457,  335,  298,  179,  772,  772,  772,  772,  772,  772,
 /*    40 */   772,  772,  772,  772,  772,  772,  809,  772,  772,  772,
 /*    50 */   928,  965,  965,  621,  777,  777,  777,  777,  777,  777,
 /*    60 */   777,  777,  777,  777,  777,  777,  777,  777,  777,  777,
 /*    70 */   777,  777,  777,  777,  777,  777,  777,  777, 1129,  777,
 /*    80 */   777,  777,  777,  777,  777,  777,  777,  777,  777,  777,
 /*    90 */   777,  777,  777,  777,  777,  777,  777,  777,  777,  777,
 /*   100 */   777,  777,  777,    0,  156,  156,  156,  156,  156,  156,
 /*   110 */    -5,  303,   39,   39,   39,   39,  343,  343,  343,  343,
 /*   120 */   170,   44,   44,   19,   19,  656,  656,  656, 1164, 1273,
 /*   130 */  1254, 1254, 1254, 1164, -142, -142, -142, -142,  -22,  -22,
 /*   140 */   -22,  -22, -132,  250,  513,  513,  513, 1164, 1164, 1164,
 /*   150 */  1164, 1164, 1164, 1164, 1243, 1243, 1164, 1164, 1164, 1164,
 /*   160 */  1243, 1164, 1243, 1164, -142, -142,  -22,  -22,   25,   72,
 /*   170 */   296,  139,  344,  238,  172,    6,   75,   75,   75,  482,
 /*   180 */   204,  200,   20,  492,   20,  361,  425,  425,  389,  107,
 /*   190 */    20,   20,   20,  281,  332,  119,  -63, 1250, 1375, 1113,
 /*   200 */  1164, 1250, 1113, 1094, 1113, 1164, 1164, 1164, 1164, 1208,
 /*   210 */  1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164,
 /*   220 */  1057, 1164, 1057, 1164, 1164, 1338, 1164, 1164, 1164, 1338,
 /*   230 */  1057, 1338, 1164, 1289, 1057, 1164, 1164, 1189, 1164, 1164,
 /*   240 */  1164, 1057, 1164, 1232, 1218, 1164, 1205, 1057, 1164, 1189,
 /*   250 */  1164, 1138, 1105, 1292, 1164, 1164, 1273, 1276, 1165, 1276,
 /*   260 */  1165, 1164, 1276, 1165, 1164, 1276, 1165, 1164, 1057, 1195,
 /*   270 */  1279, 1258, 1102, 1243, 1243, 1164, 1164, 1110, 1105, 1107,
 /*   280 */  1103, 1094, 1113, 1120, 1164, 1230, 1164, 1232, 1218, 1194,
 /*   290 */  1205, 1057, 1164, 1189, 1188, 1188, 1188, 1188, -142, -142,
 /*   300 */  -142, 1055,  154,  421,  183,  183,  183,  -10,  587,  -94,
 /*   310 */  -141,  317, -134,  584,  581,  423,  394,  580,  430,  403,
 /*   320 */   401,  400,  392,  355,  415,  378,  348,  367,  342,  123,
 /*   330 */   174,  328,  264,   89, 1182, 1009, 1147, 1145, 1041, 1018,
 /*   340 */  1135, 1033, 1014, 1020, 1109, 1139, 1144, 1095, 1127, 1125,
 /*   350 */   985,  999,  970,  998,  989,  983,  972,  976, 1083, 1076,
 /*   360 */  1067,  968, 1086, 1091, 1089, 1059,  919, 1066, 1052,  926,
 /*   370 */  1032,  993, 1035, 1029, 1028, 1022, 1015, 1013, 1016, 1007,
 /*   380 */  1001, 1010, 1000,  997,  975,  974,  996,  981,  837,  992,
 /*   390 */   831,  827,  951,  988,  959,  973,  849,  848,  971,  844,
 /*   400 */   958,  804,  801,  935,  934,  836,  835,  834,  829,  826,
 /*   410 */   823,  814,  800,  796,  791,  922,  911,  883,  903,  899,
 /*   420 */   893,  880,  897,  896,  827,  857,  859,  845,  855,  827,
 /*   430 */   819,  841,  840,  833,  832,  825,  696,  830,  828,  821,
 /*   440 */   824,  822,  812,  820,  816,  808,  810,  802,  787,  790,
 /*   450 */   786,  749,  783,  749,  684,  553,  533,  598,  596,  632,
 /*   460 */   574,  545,  455,  512,  573,  416,  404,  466,  362,  351,
 /*   470 */   293,  108,   83,   28,
};
const short SQLParser::yy_reduce_ofst[] = {
 /*     0 */   359,  280, -183,  307,  626,  623,  467,  433,  422,  295,
 /*    10 */   283, -175, -163, -184, -229,  110,  -54,  190,  650,  152,
 /*    20 */   497,   48,  132, -170,  -23,   -7,   77,   77,   77,   77,
 /*    30 */    77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
 /*    40 */    77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
 /*    50 */    77,   77,   77, 1049, 1045, 1044, 1043, 1042, 1038, 1037,
 /*    60 */  1036, 1030, 1024, 1019, 1004,  991,  982,  980,  964,  956,
 /*    70 */   953,  950,  944,  941,  939,  925,  917,  870,  869,  865,
 /*    80 */   818,  817,  815,  784,  782,  781,  779,  757,  753,  663,
 /*    90 */   662,  661,  658,  657,  625,  522,  505,  504,  503,  502,
 /*   100 */   501,  469,  304,   77,   77,   77,   77,   77,   77,   77,
 /*   110 */   286,  286,   77,   77,   77,   77,   77,   77,   77,   77,
 /*   120 */    26,   77,   77,  191,  115,  419,  410,  302,  308,  117,
 /*   130 */    77,   77,   77,  239,   77,   77,   77,   77,  687,  675,
 /*   140 */   595,  579,  531,  453,  544,  480,  149,  530,  566,  487,
 /*   150 */   529,  490,  516,  405,  474,  429,  489,  448,  499,  454,
 /*   160 */   377,  408,   -3,  436,  267,  428, 1212, 1211, 1210, 1210,
 /*   170 */  1207, 1142, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1206,
 /*   180 */  1204, 1203, 1202, 1201, 1200, 1199, 1198, 1197, 1117, 1082,
 /*   190 */  1196, 1193, 1192, 1191, 1112, 1171, 1160, 1190, 1097, 1158,
 /*   200 */  1187, 1168, 1157, 1155, 1143, 1186, 1185, 1184, 1183, 1150,
 /*   210 */  1181, 1180, 1179, 1178, 1177, 1176, 1175, 1174, 1173, 1172,
 /*   220 */  1170, 1169, 1167, 1166, 1163, 1140, 1162, 1161, 1159, 1131,
 /*   230 */  1156, 1118, 1154, 1128, 1146, 1153, 1152, 1134, 1151, 1149,
 /*   240 */  1148, 1137, 1141, 1136, 1122, 1132, 1133, 1130, 1124, 1126,
 /*   250 */  1123, 1081, 1085, 1074, 1121, 1119, 1063, 1080, 1079, 1077,
 /*   260 */  1075, 1116, 1073, 1072, 1115, 1069, 1065, 1106, 1108, 1060,
 /*   270 */  1092, 1078, 1047, 1071, 1070, 1084, 1082, 1048, 1051, 1046,
 /*   280 */  1039, 1034, 1040, 1025, 1068, 1061, 1062, 1058, 1056, 1054,
 /*   290 */  1053, 1050, 1005, 1027, 1031, 1026, 1017, 1006, 1012, 1011,
 /*   300 */  1002,
};
const SQLParser_YYACTIONTYPE SQLParser::yy_default[] = {
 /*     0 */   675,  975,  795,  978,  975,  975,  975,  975,  975,  975,
 /*    10 */   975,  975,  802,  826,  822,  768,  768,  978,  978,  978,
 /*    20 */   978,  973,  978,  978,  978,  978,  873,  978,  978,  978,
 /*    30 */   978,  978,  978,  978,  881,  880,  716,  852,  877,  871,
 /*    40 */   875,  969,  970,  968,  972,  976,  978,  977,  874,  715,
 /*    50 */   928,  927,  954,  978,  978,  978,  978,  978,  978,  978,
 /*    60 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*    70 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*    80 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*    90 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   100 */   978,  978,  978,  947,  953,  960,  952,  948,  934,  933,
 /*   110 */   978,  801,  929,  932,  931,  930,  938,  937,  936,  935,
 /*   120 */   978,  940,  939,  978,  978,  978,  978,  978,  978,  797,
 /*   130 */   943,  942,  941,  978,  957,  956,  955,  944,  978,  978,
 /*   140 */   978,  978,  978,  675,  978,  978,  978,  978,  978,  978,
 /*   150 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   160 */   978,  978,  978,  978,  826,  816,  978,  978,  978,  824,
 /*   170 */   687,  978,  978,  978,  978,  978,  882,  783,  744,  822,
 /*   180 */   814,  876,  822,  978,  822,  978,  768,  768,  922,  978,
 /*   190 */   822,  822,  822,  978,  971,  823,  814,  736,  885,  795,
 /*   200 */   978,  736,  795,  876,  795,  978,  978,  978,  978,  978,
 /*   210 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   220 */   831,  978,  831,  978,  978,  742,  978,  978,  978,  742,
 /*   230 */   831,  742,  978,  762,  831,  978,  978,  688,  978,  978,
 /*   240 */   978,  831,  978,  698,  713,  978,  732,  831,  978,  688,
 /*   250 */   978,  922,  856,  924,  978,  978,  796,  855,  853,  855,
 /*   260 */   853,  978,  855,  853,  978,  855,  853,  978,  831,  863,
 /*   270 */   705,  978,  978,  726,  724,  978,  978,  872,  856,  870,
 /*   280 */   860,  876,  795,  978,  978,  978,  978,  698,  713,  709,
 /*   290 */   732,  831,  978,  688,  680,  680,  680,  680,  693,  693,
 /*   300 */   693,  978,  978,  978,  779,  778,  692,  978,  978,  978,
 /*   310 */   978,  978,  771,  978,  978,  978,  978,  978,  978,  978,
 /*   320 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  723,
 /*   330 */   892,  978,  978,  978,  676,  978,  978,  978,  978,  978,
 /*   340 */   978,  978,  978,  978,  978,  773,  978,  978,  978,  978,
 /*   350 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   360 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  751,
 /*   370 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   380 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   390 */   978,  925,  978,  978,  978,  978,  810,  978,  978,  809,
 /*   400 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   410 */   978,  978,  978,  978,  978,  978,  978,  978,  706,  978,
 /*   420 */   978,  978,  978,  978,  861,  978,  857,  978,  978,  974,
 /*   430 */   978,  978,  978,  978,  978,  791,  786,  978,  978,  978,
 /*   440 */   978,  978,  978,  978,  978,  978,  978,  978,  978,  978,
 /*   450 */   978,  727,  978,  725,  978,  893,  978,  978,  978,  978,
 /*   460 */   978,  978,  978,  978,  978,  978,  700,  978,  978,  978,
 /*   470 */   978,  978,  978,  978,  672,  677,  884,  883,  886,  879,
 /*   480 */   739,  738,  737,  878,  782,  781,  780,  776,  775,  774,
 /*   490 */   777,  772,  760,  759,  758,  757,  753,  752,  743,  770,
 /*   500 */   769,  756,  754,  749,  747,  741,  833,  740,  717,  763,
 /*   510 */   761,  755,  750,  748,  746,  718,  689,  690,  765,  764,
 /*   520 */   735,  734,  733,  697,  696,  695,  694,  691,  710,  921,
 /*   530 */   926,  923,  920,  890,  964,  799,  804,  811,  808,  807,
 /*   540 */   806,  805,  803,  800,  798,  794,  819,  818,  817,  830,
 /*   550 */   829,  832,  828,  888,  887,  854,  827,  821,  820,  851,
 /*   560 */   850,  849,  848,  847,  846,  845,  844,  843,  842,  841,
 /*   570 */   840,  839,  838,  837,  836,  835,  834,  825,  815,  869,
 /*   580 */   868,  867,  866,  865,  864,  862,  707,  708,  704,  859,
 /*   590 */   858,  767,  766,  907,  963,  967,  792,  966,  793,  965,
 /*   600 */   789,  788,  787,  961,  958,  950,  949,  962,  959,  951,
 /*   610 */   946,  945,  906,  905,  904,  903,  902,  731,  730,  728,
 /*   620 */   729,  721,  720,  719,  901,  900,  899,  898,  897,  896,
 /*   630 */   895,  894,  891,  790,  785,  784,  889,  813,  812,  714,
 /*   640 */   919,  918,  917,  916,  915,  914,  913,  912,  911,  910,
 /*   650 */   909,  908,  703,  702,  701,  722,  712,  711,  699,  686,
 /*   660 */   685,  684,  683,  682,  681,  679,  678,  674,  673,  671,
};

#ifdef SQLParser_YYFALLBACK
	const SQLParser_YYCODETYPE SQLParser::yyFallback[] = {
    0,  /*          $ => nothing */
    0,  /*       SEMI => nothing */
   40,  /*    EXPLAIN => ID */
   40,  /*    ANALYZE => ID */
   40,  /*      BEGIN => ID */
    0,  /* TRANSACTION => nothing */
    0,  /*     COMMIT => nothing */
   40,  /*        END => ID */
   40,  /*   ROLLBACK => ID */
    0,  /*      TABLE => nothing */
    0,  /*         LP => nothing */
    0,  /*         RP => nothing */
    0,  /*     CREATE => nothing */
    0,  /*         IF => nothing */
    0,  /*        NOT => nothing */
    0,  /*     EXISTS => nothing */
    0,  /*      COMMA => nothing */
    0,  /*    PRIMARY => nothing */
   40,  /*        KEY => ID */
    0,  /*       NULL => nothing */
    0,  /*         AS => nothing */
   40,  /*    VIRTUAL => ID */
   40,  /*      RANGE => ID */
   40,  /*   INTERVAL => ID */
   40,  /*  PARTITION => ID */
   40,  /*         BY => ID */
   40,  /*       HASH => ID */
   40,  /* PARTITIONS => ID */
    0,  /*    INTEGER => nothing */
   40,  /* SUBPARTITION => ID */
   40,  /* SUBPARTITIONS => ID */
   40,  /*      EVERY => ID */
    0,  /*     STRING => nothing */
    0,  /*      USING => nothing */
   40,  /* TIMESERIES => ID */
   40,  /*       WITH => ID */
    0,  /*         EQ => nothing */
    0,  /*      FLOAT => nothing */
    0,  /*       PLUS => nothing */
    0,  /*      MINUS => nothing */
    0,  /*         ID => nothing */
   40,  /*      ABORT => ID */
   40,  /*     ACTION => ID */
   40,  /*      AFTER => ID */
   40,  /*        ASC => ID */
   40,  /*     ATTACH => ID */
   40,  /*     BEFORE => ID */
   40,  /*    CASCADE => ID */
   40,  /*       CAST => ID */
   40,  /*   COLUMNKW => ID */
   40,  /*   CONFLICT => ID */
   40,  /*   DATABASE => ID */
   40,  /*   DEFERRED => ID */
   40,  /*       DESC => ID */
   40,  /*     DETACH => ID */
   40,  /*       EACH => ID */
   40,  /*  EXCLUSIVE => ID */
   40,  /*       FAIL => ID */
   40,  /*        FOR => ID */
   40,  /*     IGNORE => ID */
   40,  /*  IMMEDIATE => ID */
   40,  /*  INITIALLY => ID */
   40,  /*    INSTEAD => ID */
   40,  /*    LIKE_KW => ID */
   40,  /*      MATCH => ID */
   40,  /*         NO => ID */
   40,  /*       PLAN => ID */
   40,  /*      QUERY => ID */
   40,  /*         OF => ID */
   40,  /*     OFFSET => ID */
   40,  /*     PRAGMA => ID */
   40,  /*      RAISE => ID */
   40,  /*  RECURSIVE => ID */
   40,  /*    RELEASE => ID */
   40,  /*    REPLACE => ID */
   40,  /*   RESTRICT => ID */
   40,  /*        ROW => ID */
   40,  /*  SAVEPOINT => ID */
   40,  /*       TEMP => ID */
   40,  /*    TRIGGER => ID */
   40,  /*     VACUUM => ID */
   40,  /*       VIEW => ID */
   40,  /*    WITHOUT => ID */
   40,  /*    EXTRACT => ID */
   40,  /* TIMESTAMPADD => ID */
   40,  /* TIMESTAMPDIFF => ID */
   40,  /*       YEAR => ID */
   40,  /*      MONTH => ID */
   40,  /*        DAY => ID */
   40,  /*       WEEK => ID */
   40,  /*       HOUR => ID */
   40,  /*     MINUTE => ID */
   40,  /*     SECOND => ID */
   40,  /* MILLISECOND => ID */
   40,  /* MICROSECOND => ID */
   40,  /*  NANOSCOND => ID */
   40,  /*       GLOB => ID */
   40,  /*       LIKE => ID */
   40,  /*     REGEXP => ID */
   40,  /*       TRUE => ID */
   40,  /*      FALSE => ID */
   40,  /*      FORCE => ID */
   40,  /* TIMESTAMP_TRUNC => ID */
   40,  /* DAY_OF_WEEK => ID */
   40,  /* DAY_OF_YEAR => ID */
   40,  /*     WITHIN => ID */
   40,  /*       FILL => ID */
   40,  /*       NONE => ID */
   40,  /*   PREVIOUS => ID */
   40,  /*     LINEAR => ID */
	};
#endif /* SQLParser_YYFALLBACK */

#ifndef NDEBUG
	/* For tracing shifts, the names of all terminals and nonterminals
	 ** are required.  The following table supplies these names */
	const char *const SQLParser::yyTokenName[] = {
  "$",             "SEMI",          "EXPLAIN",       "ANALYZE",     
  "BEGIN",         "TRANSACTION",   "COMMIT",        "END",         
  "ROLLBACK",      "TABLE",         "LP",            "RP",          
  "CREATE",        "IF",            "NOT",           "EXISTS",      
  "COMMA",         "PRIMARY",       "KEY",           "NULL",        
  "AS",            "VIRTUAL",       "RANGE",         "INTERVAL",    
  "PARTITION",     "BY",            "HASH",          "PARTITIONS",  
  "INTEGER",       "SUBPARTITION",  "SUBPARTITIONS",  "EVERY",       
  "STRING",        "USING",         "TIMESERIES",    "WITH",        
  "EQ",            "FLOAT",         "PLUS",          "MINUS",       
  "ID",            "ABORT",         "ACTION",        "AFTER",       
  "ASC",           "ATTACH",        "BEFORE",        "CASCADE",     
  "CAST",          "COLUMNKW",      "CONFLICT",      "DATABASE",    
  "DEFERRED",      "DESC",          "DETACH",        "EACH",        
  "EXCLUSIVE",     "FAIL",          "FOR",           "IGNORE",      
  "IMMEDIATE",     "INITIALLY",     "INSTEAD",       "LIKE_KW",     
  "MATCH",         "NO",            "PLAN",          "QUERY",       
  "OF",            "OFFSET",        "PRAGMA",        "RAISE",       
  "RECURSIVE",     "RELEASE",       "REPLACE",       "RESTRICT",    
  "ROW",           "SAVEPOINT",     "TEMP",          "TRIGGER",     
  "VACUUM",        "VIEW",          "WITHOUT",       "EXTRACT",     
  "TIMESTAMPADD",  "TIMESTAMPDIFF",  "YEAR",          "MONTH",       
  "DAY",           "WEEK",          "HOUR",          "MINUTE",      
  "SECOND",        "MILLISECOND",   "MICROSECOND",   "NANOSCOND",   
  "GLOB",          "LIKE",          "REGEXP",        "TRUE",        
  "FALSE",         "FORCE",         "TIMESTAMP_TRUNC",  "DAY_OF_WEEK", 
  "DAY_OF_YEAR",   "WITHIN",        "FILL",          "NONE",        
  "PREVIOUS",      "LINEAR",        "ANY",           "OR",          
  "XOR",           "AND",           "IS",            "BETWEEN",     
  "IN",            "ISNULL",        "NOTNULL",       "NE",          
  "GT",            "LE",            "LT",            "GE",          
  "ESCAPE",        "BITAND",        "BITOR",         "LSHIFT",      
  "RSHIFT",        "STAR",          "SLASH",         "REM",         
  "CONCAT",        "COLLATE",       "BITNOT",        "DROP",        
  "USER",          "IDENTIFIED",    "SET",           "PASSWORD",    
  "ROLE",          "GRANT",         "ALL",           "ON",          
  "TO",            "SELECT",        "REVOKE",        "FROM",        
  "INDEX",         "DOT",           "ALTER",         "RENAME",      
  "ADD",           "UNION",         "EXCEPT",        "INTERSECT",   
  "VALUES",        "HINT_START",    "HINT_END",      "DISTINCT",    
  "JOIN",          "INNER",         "CROSS",         "LEFT",        
  "OUTER",         "RIGHT",         "FULL",          "NATURAL",     
  "ORDER",         "GROUP",         "HAVING",        "LIMIT",       
  "WHERE",         "DELETE",        "UPDATE",        "INTO",        
  "INSERT",        "BLOB",          "VARIABLE",      "NANOSECOND",  
  "OVER",          "CASE",          "WHEN",          "THEN",        
  "ELSE",          "error",         "input",         "cmdlist",     
  "ecmd",          "explain",       "cmdx",          "cmd",         
  "trans_opt",     "create_table",  "createkw",      "ifnotexists", 
  "nm",            "dbnm",          "columnlist",    "conslist_opt",
  "is_timeseries",  "createtable_opt",  "partitioning_options",  "column",      
  "typetoken",     "carglist",      "expr",          "singlecol",   
  "intervalOption",  "fieldType",     "groupIntervalOption",  "intervalOptionDetail",
  "createtable_optlist",  "create_virtual_table",  "plus_num",      "minus_num",   
  "typename",      "signed",        "conslist",      "tcons",       
  "idxlist",       "orconf",        "resolvetype",   "ifexists",    
  "fullname",      "create_view",   "force",         "select",      
  "using_options",  "exprlist",      "idxlist_opt",   "sortascending",
  "addcolumnlist",  "renamecolumn",  "addcolumn",     "hint_opt",    
  "selectnowith",  "oneselect",     "multiselect_op",  "distinct",    
  "selcollist",    "from",          "where_opt",     "groupby_opt", 
  "having_opt",    "orderby_opt",   "limit_opt",     "valuelist",   
  "nexprlist",     "hintlist",      "hintlist1",     "onehint",     
  "hintexprlist",  "hintexprlist1",  "hintexpr",      "term",        
  "sclp",          "as",            "seltabtree",    "stl_prefix",  
  "joinop",        "on_opt",        "using_opt",     "idlist",      
  "sortlist",      "groupFillOption",  "groupFillOptionBase",  "setlist",     
  "insert_cmd",    "inscollist_opt",  "field",         "window_opt",  
  "partitionby_opt",  "likeop",        "between_op",    "in_op",       
  "case_operand",  "case_exprlist",  "case_else",   
	};
#endif /* NDEBUG */

#ifndef NDEBUG
	/* For tracing reduce actions, the names of all rules are required.
	 */
	const char *const SQLParser::yyRuleName[] = {
 /*   0 */ "input ::= cmdlist",
 /*   1 */ "cmdlist ::= cmdlist ecmd",
 /*   2 */ "cmdlist ::= ecmd",
 /*   3 */ "ecmd ::= SEMI",
 /*   4 */ "ecmd ::= explain cmdx SEMI",
 /*   5 */ "explain ::=",
 /*   6 */ "explain ::= EXPLAIN",
 /*   7 */ "explain ::= EXPLAIN ANALYZE",
 /*   8 */ "cmdx ::= cmd",
 /*   9 */ "cmd ::= BEGIN trans_opt",
 /*  10 */ "trans_opt ::=",
 /*  11 */ "trans_opt ::= TRANSACTION",
 /*  12 */ "cmd ::= COMMIT trans_opt",
 /*  13 */ "cmd ::= END trans_opt",
 /*  14 */ "cmd ::= ROLLBACK trans_opt",
 /*  15 */ "cmd ::= create_table",
 /*  16 */ "create_table ::= createkw TABLE ifnotexists nm dbnm LP columnlist conslist_opt RP is_timeseries createtable_opt partitioning_options",
 /*  17 */ "createkw ::= CREATE",
 /*  18 */ "ifnotexists ::=",
 /*  19 */ "ifnotexists ::= IF NOT EXISTS",
 /*  20 */ "columnlist ::= column",
 /*  21 */ "columnlist ::= columnlist COMMA column",
 /*  22 */ "column ::= nm typetoken carglist",
 /*  23 */ "carglist ::=",
 /*  24 */ "carglist ::= carglist PRIMARY KEY",
 /*  25 */ "carglist ::= carglist NOT NULL",
 /*  26 */ "carglist ::= carglist NULL",
 /*  27 */ "carglist ::= carglist AS LP expr RP VIRTUAL",
 /*  28 */ "partitioning_options ::=",
 /*  29 */ "partitioning_options ::= PARTITION BY HASH singlecol PARTITIONS INTEGER",
 /*  30 */ "partitioning_options ::= PARTITION BY RANGE|INTERVAL singlecol intervalOption",
 /*  31 */ "partitioning_options ::= PARTITION BY RANGE|INTERVAL singlecol intervalOption SUBPARTITION BY HASH singlecol SUBPARTITIONS INTEGER",
 /*  32 */ "intervalOption ::= EVERY LP INTEGER RP",
 /*  33 */ "intervalOption ::= EVERY LP INTEGER COMMA fieldType RP",
 /*  34 */ "groupIntervalOption ::= EVERY LP INTEGER COMMA fieldType intervalOptionDetail RP",
 /*  35 */ "intervalOptionDetail ::=",
 /*  36 */ "intervalOptionDetail ::= COMMA INTEGER",
 /*  37 */ "intervalOptionDetail ::= COMMA STRING",
 /*  38 */ "intervalOptionDetail ::= COMMA INTEGER COMMA STRING",
 /*  39 */ "is_timeseries ::=",
 /*  40 */ "is_timeseries ::= USING TIMESERIES",
 /*  41 */ "singlecol ::= nm",
 /*  42 */ "singlecol ::= LP nm RP",
 /*  43 */ "createtable_opt ::=",
 /*  44 */ "createtable_opt ::= WITH LP createtable_optlist RP",
 /*  45 */ "createtable_optlist ::= createtable_optlist COMMA nm EQ expr",
 /*  46 */ "createtable_optlist ::= nm EQ expr",
 /*  47 */ "cmd ::= create_virtual_table",
 /*  48 */ "create_virtual_table ::= createkw VIRTUAL TABLE ifnotexists nm dbnm LP columnlist conslist_opt RP USING nm createtable_opt partitioning_options",
 /*  49 */ "plus_num ::= PLUS INTEGER|FLOAT",
 /*  50 */ "plus_num ::= INTEGER|FLOAT",
 /*  51 */ "minus_num ::= MINUS INTEGER|FLOAT",
 /*  52 */ "nm ::= ID",
 /*  53 */ "typetoken ::= typename",
 /*  54 */ "typetoken ::= typename LP signed RP",
 /*  55 */ "typetoken ::= typename LP signed RP typename",
 /*  56 */ "typetoken ::= typename LP signed COMMA signed RP",
 /*  57 */ "typetoken ::= typename LP signed COMMA signed RP typename",
 /*  58 */ "typename ::= ID",
 /*  59 */ "typename ::= typename ID",
 /*  60 */ "signed ::= plus_num",
 /*  61 */ "signed ::= minus_num",
 /*  62 */ "conslist_opt ::=",
 /*  63 */ "conslist_opt ::= COMMA conslist",
 /*  64 */ "conslist ::= tcons",
 /*  65 */ "tcons ::= PRIMARY KEY LP idxlist RP",
 /*  66 */ "orconf ::=",
 /*  67 */ "orconf ::= OR resolvetype",
 /*  68 */ "resolvetype ::= IGNORE",
 /*  69 */ "resolvetype ::= REPLACE",
 /*  70 */ "cmd ::= DROP TABLE ifexists fullname",
 /*  71 */ "ifexists ::= IF EXISTS",
 /*  72 */ "ifexists ::=",
 /*  73 */ "cmd ::= create_view",
 /*  74 */ "create_view ::= CREATE force VIEW nm dbnm AS select",
 /*  75 */ "force ::=",
 /*  76 */ "force ::= FORCE",
 /*  77 */ "cmd ::= DROP VIEW ifexists fullname",
 /*  78 */ "cmd ::= CREATE DATABASE nm",
 /*  79 */ "cmd ::= DROP DATABASE nm",
 /*  80 */ "cmd ::= CREATE USER nm IDENTIFIED BY STRING",
 /*  81 */ "cmd ::= CREATE USER nm",
 /*  82 */ "cmd ::= SET PASSWORD FOR nm EQ STRING",
 /*  83 */ "cmd ::= SET PASSWORD EQ STRING",
 /*  84 */ "cmd ::= DROP USER nm",
 /*  85 */ "cmd ::= CREATE ROLE nm",
 /*  86 */ "cmd ::= DROP ROLE nm",
 /*  87 */ "cmd ::= GRANT ALL ON nm TO nm",
 /*  88 */ "cmd ::= GRANT SELECT ON nm TO nm",
 /*  89 */ "cmd ::= REVOKE ALL ON nm FROM nm",
 /*  90 */ "cmd ::= REVOKE SELECT ON nm FROM nm",
 /*  91 */ "cmd ::= CREATE INDEX ifnotexists nm ON nm dbnm LP idxlist RP using_options",
 /*  92 */ "using_options ::=",
 /*  93 */ "using_options ::= USING nm LP exprlist RP",
 /*  94 */ "idxlist ::= idxlist COMMA nm sortascending",
 /*  95 */ "idxlist ::= nm sortascending",
 /*  96 */ "sortascending ::= ASC",
 /*  97 */ "sortascending ::= DESC",
 /*  98 */ "sortascending ::=",
 /*  99 */ "cmd ::= DROP INDEX ifexists nm ON nm dbnm",
 /* 100 */ "cmd ::= DROP INDEX ifexists nm DOT nm dbnm",
 /* 101 */ "cmd ::= DROP INDEX ifexists nm",
 /* 102 */ "cmd ::= ALTER TABLE nm DROP PARTITION FOR LP expr RP",
 /* 103 */ "cmd ::= ALTER TABLE nm addcolumnlist",
 /* 104 */ "cmd ::= ALTER TABLE nm RENAME COLUMNKW renamecolumn TO renamecolumn",
 /* 105 */ "renamecolumn ::= nm",
 /* 106 */ "addcolumnlist ::= addcolumn",
 /* 107 */ "addcolumnlist ::= addcolumnlist COMMA addcolumn",
 /* 108 */ "addcolumn ::= ADD nm typetoken carglist",
 /* 109 */ "addcolumn ::= ADD COLUMNKW nm typetoken carglist",
 /* 110 */ "cmd ::= PRAGMA nm DOT nm DOT nm EQ nm",
 /* 111 */ "cmd ::= PRAGMA nm DOT nm DOT nm EQ plus_num",
 /* 112 */ "cmd ::= PRAGMA nm DOT nm DOT nm EQ minus_num",
 /* 113 */ "cmd ::= hint_opt select",
 /* 114 */ "select ::= oneselect",
 /* 115 */ "select ::= select multiselect_op oneselect",
 /* 116 */ "multiselect_op ::= UNION",
 /* 117 */ "multiselect_op ::= UNION ALL",
 /* 118 */ "multiselect_op ::= EXCEPT",
 /* 119 */ "multiselect_op ::= INTERSECT",
 /* 120 */ "oneselect ::= SELECT hint_opt distinct selcollist from where_opt groupby_opt having_opt orderby_opt limit_opt",
 /* 121 */ "select ::= valuelist",
 /* 122 */ "valuelist ::= VALUES LP nexprlist RP",
 /* 123 */ "valuelist ::= valuelist COMMA LP exprlist RP",
 /* 124 */ "hint_opt ::= HINT_START hintlist HINT_END",
 /* 125 */ "hint_opt ::=",
 /* 126 */ "hintlist ::= hintlist1",
 /* 127 */ "hintlist ::=",
 /* 128 */ "hintlist1 ::= hintlist1 onehint",
 /* 129 */ "hintlist1 ::= onehint",
 /* 130 */ "onehint ::= ID LP hintexprlist RP",
 /* 131 */ "hintexprlist ::= hintexprlist1",
 /* 132 */ "hintexprlist ::=",
 /* 133 */ "hintexprlist1 ::= hintexprlist1 hintexpr",
 /* 134 */ "hintexprlist1 ::= hintexpr",
 /* 135 */ "hintexpr ::= term",
 /* 136 */ "hintexpr ::= MINUS INTEGER",
 /* 137 */ "hintexpr ::= MINUS FLOAT",
 /* 138 */ "hintexpr ::= LP hintexprlist1 RP",
 /* 139 */ "hintexpr ::= ID",
 /* 140 */ "hintexpr ::= nm DOT nm",
 /* 141 */ "hintexpr ::= nm DOT nm DOT nm",
 /* 142 */ "distinct ::= DISTINCT",
 /* 143 */ "distinct ::= ALL",
 /* 144 */ "distinct ::=",
 /* 145 */ "sclp ::= selcollist COMMA",
 /* 146 */ "sclp ::=",
 /* 147 */ "selcollist ::= sclp expr as",
 /* 148 */ "selcollist ::= sclp STAR",
 /* 149 */ "selcollist ::= sclp nm DOT STAR",
 /* 150 */ "as ::= AS nm",
 /* 151 */ "as ::= ID",
 /* 152 */ "as ::=",
 /* 153 */ "from ::=",
 /* 154 */ "from ::= FROM seltabtree",
 /* 155 */ "stl_prefix ::= seltabtree joinop",
 /* 156 */ "stl_prefix ::=",
 /* 157 */ "seltabtree ::= stl_prefix nm dbnm as on_opt using_opt",
 /* 158 */ "seltabtree ::= stl_prefix nm dbnm LP exprlist RP as on_opt using_opt",
 /* 159 */ "seltabtree ::= stl_prefix LP select RP as on_opt using_opt",
 /* 160 */ "seltabtree ::= stl_prefix LP seltabtree RP as on_opt using_opt",
 /* 161 */ "dbnm ::=",
 /* 162 */ "dbnm ::= DOT nm",
 /* 163 */ "fullname ::= nm dbnm",
 /* 164 */ "joinop ::= COMMA|JOIN",
 /* 165 */ "joinop ::= INNER JOIN",
 /* 166 */ "joinop ::= CROSS JOIN",
 /* 167 */ "joinop ::= LEFT JOIN",
 /* 168 */ "joinop ::= LEFT OUTER JOIN",
 /* 169 */ "joinop ::= RIGHT JOIN",
 /* 170 */ "joinop ::= RIGHT OUTER JOIN",
 /* 171 */ "joinop ::= FULL JOIN",
 /* 172 */ "joinop ::= FULL OUTER JOIN",
 /* 173 */ "joinop ::= NATURAL JOIN",
 /* 174 */ "joinop ::= NATURAL INNER JOIN",
 /* 175 */ "joinop ::= NATURAL CROSS JOIN",
 /* 176 */ "joinop ::= NATURAL LEFT JOIN",
 /* 177 */ "joinop ::= NATURAL LEFT OUTER JOIN",
 /* 178 */ "joinop ::= NATURAL RIGHT JOIN",
 /* 179 */ "joinop ::= NATURAL RIGHT OUTER JOIN",
 /* 180 */ "joinop ::= NATURAL FULL JOIN",
 /* 181 */ "joinop ::= NATURAL FULL OUTER JOIN",
 /* 182 */ "on_opt ::= ON expr",
 /* 183 */ "on_opt ::=",
 /* 184 */ "using_opt ::= USING LP idlist RP",
 /* 185 */ "using_opt ::=",
 /* 186 */ "orderby_opt ::=",
 /* 187 */ "orderby_opt ::= ORDER BY sortlist",
 /* 188 */ "sortlist ::= sortlist COMMA expr sortascending",
 /* 189 */ "sortlist ::= expr sortascending",
 /* 190 */ "groupby_opt ::=",
 /* 191 */ "groupby_opt ::= GROUP BY nexprlist",
 /* 192 */ "groupby_opt ::= GROUP BY RANGE LP expr RP groupIntervalOption groupFillOption",
 /* 193 */ "groupFillOption ::=",
 /* 194 */ "groupFillOption ::= FILL LP groupFillOptionBase RP",
 /* 195 */ "groupFillOptionBase ::= NULL",
 /* 196 */ "groupFillOptionBase ::= NONE",
 /* 197 */ "groupFillOptionBase ::= LINEAR",
 /* 198 */ "groupFillOptionBase ::= PREVIOUS",
 /* 199 */ "groupFillOptionBase ::= ID",
 /* 200 */ "having_opt ::=",
 /* 201 */ "having_opt ::= HAVING expr",
 /* 202 */ "limit_opt ::=",
 /* 203 */ "limit_opt ::= LIMIT expr",
 /* 204 */ "limit_opt ::= LIMIT expr OFFSET expr",
 /* 205 */ "limit_opt ::= LIMIT expr COMMA expr",
 /* 206 */ "where_opt ::=",
 /* 207 */ "where_opt ::= WHERE expr",
 /* 208 */ "cmd ::= hint_opt DELETE hint_opt FROM fullname as where_opt",
 /* 209 */ "cmd ::= hint_opt UPDATE hint_opt orconf fullname as SET setlist where_opt",
 /* 210 */ "setlist ::= setlist COMMA nm EQ expr",
 /* 211 */ "setlist ::= nm EQ expr",
 /* 212 */ "cmd ::= hint_opt insert_cmd hint_opt INTO fullname inscollist_opt select",
 /* 213 */ "insert_cmd ::= INSERT orconf",
 /* 214 */ "insert_cmd ::= REPLACE",
 /* 215 */ "inscollist_opt ::=",
 /* 216 */ "inscollist_opt ::= LP idlist RP",
 /* 217 */ "idlist ::= idlist COMMA nm",
 /* 218 */ "idlist ::= nm",
 /* 219 */ "expr ::= term",
 /* 220 */ "expr ::= LP expr RP",
 /* 221 */ "term ::= NULL",
 /* 222 */ "expr ::= ID",
 /* 223 */ "expr ::= nm DOT nm",
 /* 224 */ "expr ::= nm DOT nm DOT nm",
 /* 225 */ "term ::= INTEGER",
 /* 226 */ "term ::= FLOAT",
 /* 227 */ "term ::= TRUE",
 /* 228 */ "term ::= FALSE",
 /* 229 */ "term ::= BLOB",
 /* 230 */ "term ::= STRING",
 /* 231 */ "expr ::= VARIABLE",
 /* 232 */ "expr ::= CAST LP expr AS typetoken RP",
 /* 233 */ "expr ::= EXTRACT LP field COMMA exprlist RP",
 /* 234 */ "expr ::= TIMESTAMPADD LP field COMMA exprlist RP",
 /* 235 */ "expr ::= TIMESTAMPDIFF LP field COMMA exprlist RP",
 /* 236 */ "expr ::= TIMESTAMP_TRUNC LP field COMMA exprlist RP",
 /* 237 */ "field ::= fieldType",
 /* 238 */ "fieldType ::= YEAR",
 /* 239 */ "fieldType ::= MONTH",
 /* 240 */ "fieldType ::= DAY",
 /* 241 */ "fieldType ::= HOUR",
 /* 242 */ "fieldType ::= MINUTE",
 /* 243 */ "fieldType ::= SECOND",
 /* 244 */ "fieldType ::= MILLISECOND",
 /* 245 */ "fieldType ::= MICROSECOND",
 /* 246 */ "fieldType ::= NANOSECOND",
 /* 247 */ "fieldType ::= DAY_OF_WEEK",
 /* 248 */ "fieldType ::= DAY_OF_YEAR",
 /* 249 */ "fieldType ::= ID",
 /* 250 */ "expr ::= ID LP distinct exprlist RP window_opt",
 /* 251 */ "expr ::= ID LP STAR RP window_opt",
 /* 252 */ "window_opt ::=",
 /* 253 */ "window_opt ::= OVER LP partitionby_opt orderby_opt RP",
 /* 254 */ "partitionby_opt ::=",
 /* 255 */ "partitionby_opt ::= PARTITION BY nexprlist",
 /* 256 */ "expr ::= ID LP distinct exprlist RP WITHIN GROUP LP ORDER BY sortlist RP",
 /* 257 */ "expr ::= expr AND expr",
 /* 258 */ "expr ::= expr OR expr",
 /* 259 */ "expr ::= expr LT expr",
 /* 260 */ "expr ::= expr GT expr",
 /* 261 */ "expr ::= expr GE expr",
 /* 262 */ "expr ::= expr LE expr",
 /* 263 */ "expr ::= expr EQ expr",
 /* 264 */ "expr ::= expr NE expr",
 /* 265 */ "expr ::= expr BITAND expr",
 /* 266 */ "expr ::= expr BITOR expr",
 /* 267 */ "expr ::= expr LSHIFT expr",
 /* 268 */ "expr ::= expr RSHIFT expr",
 /* 269 */ "expr ::= expr PLUS expr",
 /* 270 */ "expr ::= expr MINUS expr",
 /* 271 */ "expr ::= expr STAR expr",
 /* 272 */ "expr ::= expr SLASH expr",
 /* 273 */ "expr ::= expr REM expr",
 /* 274 */ "expr ::= expr CONCAT expr",
 /* 275 */ "likeop ::= LIKE_KW|MATCH",
 /* 276 */ "likeop ::= NOT LIKE_KW|MATCH",
 /* 277 */ "expr ::= expr likeop expr",
 /* 278 */ "expr ::= expr likeop expr ESCAPE expr",
 /* 279 */ "expr ::= expr ISNULL",
 /* 280 */ "expr ::= expr NOTNULL",
 /* 281 */ "expr ::= expr NOT NULL",
 /* 282 */ "expr ::= expr IS expr",
 /* 283 */ "expr ::= expr IS NOT expr",
 /* 284 */ "expr ::= NOT expr",
 /* 285 */ "expr ::= BITNOT expr",
 /* 286 */ "expr ::= MINUS expr",
 /* 287 */ "expr ::= PLUS expr",
 /* 288 */ "between_op ::= BETWEEN",
 /* 289 */ "between_op ::= NOT BETWEEN",
 /* 290 */ "expr ::= expr between_op expr AND expr",
 /* 291 */ "in_op ::= IN",
 /* 292 */ "in_op ::= NOT IN",
 /* 293 */ "expr ::= expr in_op LP exprlist RP",
 /* 294 */ "expr ::= LP select RP",
 /* 295 */ "expr ::= expr in_op LP select RP",
 /* 296 */ "expr ::= EXISTS LP select RP",
 /* 297 */ "expr ::= CASE case_operand case_exprlist case_else END",
 /* 298 */ "case_exprlist ::= case_exprlist WHEN expr THEN expr",
 /* 299 */ "case_exprlist ::= WHEN expr THEN expr",
 /* 300 */ "case_else ::= ELSE expr",
 /* 301 */ "case_else ::=",
 /* 302 */ "case_operand ::= expr",
 /* 303 */ "case_operand ::=",
 /* 304 */ "exprlist ::= nexprlist",
 /* 305 */ "exprlist ::=",
 /* 306 */ "nexprlist ::= nexprlist COMMA expr",
 /* 307 */ "nexprlist ::= expr",
	};
#endif /* NDEBUG */

	const struct SQLParser::RULEINFO SQLParser::yyRuleInfo[] = {
  { 186, 1 },
  { 187, 2 },
  { 187, 1 },
  { 188, 1 },
  { 188, 3 },
  { 189, 0 },
  { 189, 1 },
  { 189, 2 },
  { 190, 1 },
  { 191, 2 },
  { 192, 0 },
  { 192, 1 },
  { 191, 2 },
  { 191, 2 },
  { 191, 2 },
  { 191, 1 },
  { 193, 12 },
  { 194, 1 },
  { 195, 0 },
  { 195, 3 },
  { 198, 1 },
  { 198, 3 },
  { 203, 3 },
  { 205, 0 },
  { 205, 3 },
  { 205, 3 },
  { 205, 2 },
  { 205, 6 },
  { 202, 0 },
  { 202, 6 },
  { 202, 5 },
  { 202, 11 },
  { 208, 4 },
  { 208, 6 },
  { 210, 7 },
  { 211, 0 },
  { 211, 2 },
  { 211, 2 },
  { 211, 4 },
  { 200, 0 },
  { 200, 2 },
  { 207, 1 },
  { 207, 3 },
  { 201, 0 },
  { 201, 4 },
  { 212, 5 },
  { 212, 3 },
  { 191, 1 },
  { 213, 14 },
  { 214, 2 },
  { 214, 1 },
  { 215, 2 },
  { 196, 1 },
  { 204, 1 },
  { 204, 4 },
  { 204, 5 },
  { 204, 6 },
  { 204, 7 },
  { 216, 1 },
  { 216, 2 },
  { 217, 1 },
  { 217, 1 },
  { 199, 0 },
  { 199, 2 },
  { 218, 1 },
  { 219, 5 },
  { 221, 0 },
  { 221, 2 },
  { 222, 1 },
  { 222, 1 },
  { 191, 4 },
  { 223, 2 },
  { 223, 0 },
  { 191, 1 },
  { 225, 7 },
  { 226, 0 },
  { 226, 1 },
  { 191, 4 },
  { 191, 3 },
  { 191, 3 },
  { 191, 6 },
  { 191, 3 },
  { 191, 6 },
  { 191, 4 },
  { 191, 3 },
  { 191, 3 },
  { 191, 3 },
  { 191, 6 },
  { 191, 6 },
  { 191, 6 },
  { 191, 6 },
  { 191, 11 },
  { 228, 0 },
  { 228, 5 },
  { 220, 4 },
  { 220, 2 },
  { 231, 1 },
  { 231, 1 },
  { 231, 0 },
  { 191, 7 },
  { 191, 7 },
  { 191, 4 },
  { 191, 9 },
  { 191, 4 },
  { 191, 8 },
  { 233, 1 },
  { 232, 1 },
  { 232, 3 },
  { 234, 4 },
  { 234, 5 },
  { 191, 8 },
  { 191, 8 },
  { 191, 8 },
  { 191, 2 },
  { 227, 1 },
  { 227, 3 },
  { 238, 1 },
  { 238, 2 },
  { 238, 1 },
  { 238, 1 },
  { 237, 10 },
  { 227, 1 },
  { 247, 4 },
  { 247, 5 },
  { 235, 3 },
  { 235, 0 },
  { 249, 1 },
  { 249, 0 },
  { 250, 2 },
  { 250, 1 },
  { 251, 4 },
  { 252, 1 },
  { 252, 0 },
  { 253, 2 },
  { 253, 1 },
  { 254, 1 },
  { 254, 2 },
  { 254, 2 },
  { 254, 3 },
  { 254, 1 },
  { 254, 3 },
  { 254, 5 },
  { 239, 1 },
  { 239, 1 },
  { 239, 0 },
  { 256, 2 },
  { 256, 0 },
  { 240, 3 },
  { 240, 2 },
  { 240, 4 },
  { 257, 2 },
  { 257, 1 },
  { 257, 0 },
  { 241, 0 },
  { 241, 2 },
  { 259, 2 },
  { 259, 0 },
  { 258, 6 },
  { 258, 9 },
  { 258, 7 },
  { 258, 7 },
  { 197, 0 },
  { 197, 2 },
  { 224, 2 },
  { 260, 1 },
  { 260, 2 },
  { 260, 2 },
  { 260, 2 },
  { 260, 3 },
  { 260, 2 },
  { 260, 3 },
  { 260, 2 },
  { 260, 3 },
  { 260, 2 },
  { 260, 3 },
  { 260, 3 },
  { 260, 3 },
  { 260, 4 },
  { 260, 3 },
  { 260, 4 },
  { 260, 3 },
  { 260, 4 },
  { 261, 2 },
  { 261, 0 },
  { 262, 4 },
  { 262, 0 },
  { 245, 0 },
  { 245, 3 },
  { 264, 4 },
  { 264, 2 },
  { 243, 0 },
  { 243, 3 },
  { 243, 8 },
  { 265, 0 },
  { 265, 4 },
  { 266, 1 },
  { 266, 1 },
  { 266, 1 },
  { 266, 1 },
  { 266, 1 },
  { 244, 0 },
  { 244, 2 },
  { 246, 0 },
  { 246, 2 },
  { 246, 4 },
  { 246, 4 },
  { 242, 0 },
  { 242, 2 },
  { 191, 7 },
  { 191, 9 },
  { 267, 5 },
  { 267, 3 },
  { 191, 7 },
  { 268, 2 },
  { 268, 1 },
  { 269, 0 },
  { 269, 3 },
  { 263, 3 },
  { 263, 1 },
  { 206, 1 },
  { 206, 3 },
  { 255, 1 },
  { 206, 1 },
  { 206, 3 },
  { 206, 5 },
  { 255, 1 },
  { 255, 1 },
  { 255, 1 },
  { 255, 1 },
  { 255, 1 },
  { 255, 1 },
  { 206, 1 },
  { 206, 6 },
  { 206, 6 },
  { 206, 6 },
  { 206, 6 },
  { 206, 6 },
  { 270, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 209, 1 },
  { 206, 6 },
  { 206, 5 },
  { 271, 0 },
  { 271, 5 },
  { 272, 0 },
  { 272, 3 },
  { 206, 12 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 206, 3 },
  { 273, 1 },
  { 273, 2 },
  { 206, 3 },
  { 206, 5 },
  { 206, 2 },
  { 206, 2 },
  { 206, 3 },
  { 206, 3 },
  { 206, 4 },
  { 206, 2 },
  { 206, 2 },
  { 206, 2 },
  { 206, 2 },
  { 274, 1 },
  { 274, 2 },
  { 206, 5 },
  { 275, 1 },
  { 275, 2 },
  { 206, 5 },
  { 206, 3 },
  { 206, 5 },
  { 206, 4 },
  { 206, 5 },
  { 277, 5 },
  { 277, 4 },
  { 278, 2 },
  { 278, 0 },
  { 276, 1 },
  { 276, 0 },
  { 229, 1 },
  { 229, 0 },
  { 248, 3 },
  { 248, 1 },
	};




	/* APPENDIX */
} 
